function collada(canvas){
	//uniform properties
	var eye = new Float32Array([0, 3, 20]);
	var target = new Float32Array([0, 0, 0]);
	var up = new Float32Array([0, 1, 0]);
	/**********************************************************
	 * main scene
	 *********************************************************/
	var camera = qtre.sceneManager.createCamera("main", {
		eye : eye,
		target : target,
		up : up,
		fov : tdl.math.degToRad(45),
		near : 1,
		far : 5000
	})

	var fbo = tdl.framebuffers.createFramebuffer(1024, 1024, true);
	fbo.unbind();

	var cl = new qtre.ColladaLoader();
	var sceneNode = cl.load("../assets/head.dae", qtre.sceneManager.createSceneNode("qt"), camera, function(sceneNode){
		sceneNode.addRenderBeginCallback(function(){
//			this.rotateY(Math.PI/360);
		})
	});

	var sceneNodeParent = qtre.sceneManager.createSceneNode("qt_parent");
	sceneNodeParent.addChild(sceneNode);

	var cameraSceneNode = qtre.sceneManager.createSceneNode("camera");
	cameraSceneNode.attachObject(camera);

	qtre.input.addEventListener("mousemove", function(){
		if(qtre.input.mouseDown){
			sceneNodeParent.rotateX(Math.PI/360*qtre.input.dy);
			sceneNode.rotateY(Math.PI/360*qtre.input.dx);
		}
	})

	qtre.input.addEventListener("mousewheel", function(){
		var scale = qtre.input.wheelDelta > 0 ? 2 : 1/2;
		sceneNodeParent.scale([scale, scale, scale]);
	})
}